home *** CD-ROM | disk | FTP | other *** search
- PRINT "Software by: Bob Giese, N5KXN"
- PRINT " P. O. Box 7681"
- PRINT " Houston, TX 77270"
- COMMON L$,R,K
- L$="QWERTYUIOPASDFGHJKLZXCVBNMAEIOST"
- P6=0
- S$=""
- WAVE 0,SIN
- CLEAR
- PRINT
- PRINT "Control this program from the CODE pulldown menu."
- FOR I=1 TO 500:F=SIN(I):NEXT I 'Wait a bit
- F=770 ' FREQUENCY IN Hz.
- V=127 ' relative volume
- W1=13
- D1=20/W1
- D3=1.3*D1
- D=D1/1000 : D2=3*D1
- P2=D1
- P3=3*P2
- MENU 6,0,1,"CODE"
- MENU 6,1,1,"5 letter words"
- MENU 6,2,1,"File input"
- MENU 6,3,1,"User input"
- MENU 6,4,1,"Change speed"
- MENU 6,5,1,"Change tone"
- 'MENU 6,6,1,"Change volume"
-
- start:
- CLS
- MENU ON
- ON MENU GOSUB react
-
- loop:
- GOTO loop
-
- react:
- IF MENU(0)<>6 THEN RETURN
- ON MENU(1) GOSUB random,file,words,speed,tone
- RETURN
-
- words:
- MENU
- PRINT "ENTER WORDS TO SEND";
- INPUT S$
-
- go:
- FOR I=1 TO LEN(S$)
- A$=UCASE$(MID$(S$,I,1) )
- GOSUB asciitocode
- PRINT " ";A$;" ";B$
- FOR J=1 TO LEN(B$)
- IF MID$(B$,J,1) ="." THEN GOSUB dot
- IF MID$(B$,J,1) ="-" THEN GOSUB dash
- IF MID$(B$,J,1)=" " THEN GOSUB space
- NEXT J
- NEXT I
- RETURN
-
- dot:
- SOUND F,P2,V,0 ' BEEP P1,P2
- SOUND 99999!,D1,0,0 'WAIT D1
- RETURN
-
- dash:
- SOUND F,P3,V,0 ' BEEP P1,P3
- SOUND 99999!,D1,0,0 'WAIT D1
- RETURN
-
- space:
- SOUND 99999!,D3,0,0 'WAIT D3
- RETURN
-
- asciitocode:
- IF A$="A" THEN B$=".- "
- IF A$="B" THEN B$="-... "
- IF A$="E" THEN B$=". "
- IF A$="N" THEN B$="-. "
- IF A$="S" THEN B$="... "
- IF A$="O" THEN B$="--- "
- IF A$="C" THEN B$="-.-. "
- IF A$="D" THEN B$="-.. "
- IF A$="F" THEN B$="..-. "
- IF A$="G" THEN B$="--. "
- IF A$="H" THEN B$=".... "
- IF A$="I" THEN B$=".. "
- IF A$="J" THEN B$=".--- "
- IF A$="K" THEN B$="-.- "
- IF A$="L" THEN B$=".-.. "
- IF A$="M" THEN B$="-- "
- IF A$="P" THEN B$=".--. "
- IF A$="Q" THEN B$="--.- "
- IF A$="R" THEN B$=".-. "
- IF A$="V" THEN B$="...- "
- IF A$="U" THEN B$="..- "
- IF A$="W" THEN B$=".-- "
- IF A$="X" THEN B$="-..- "
- IF A$="Y" THEN B$="-.-- "
- IF A$="Z" THEN B$="--.. "
- IF A$=" " THEN B$=" "
- IF A$="T" THEN B$="- "
- IF A$="1" THEN B$=".---- "
- IF A$="2" THEN B$="..--- "
- IF A$="3" THEN B$="...-- "
- IF A$="4" THEN B$="....- "
- IF A$="5" THEN B$="..... "
- IF A$="6" THEN B$="-.... "
- IF A$="7" THEN B$="--... "
- IF A$="8" THEN B$="---.. "
- IF A$="9" THEN B$="----. "
- IF A$="0" THEN B$="----- "
- IF A$="?" THEN B$="..--.."
- IF A$="." THEN B$=".-.-.-"
- IF A$="<" THEN B$="--..--"
- IF A$="," THEN B$="--..--"
- IF A$="-" THEN B$="-...- "
- IF A$="/" THEN B$="-..-. "
- SOUND 99999!,D1,0,0 'WAIT D3' IF W1<15 THEN WAIT (15-W1)*(1000/W1)
- RETURN
-
- random:
- MENU ' RANDOM SEQUENCE GENERATOR
- L$="QWERTYUIOPASDFGHJKLZXCVBNMAEIOST"
- S$=""
- K=INT(TIMER/3) MOD 47
- FOR I=1 TO K
- J=RND(1)
- NEXT I
- FOR I=1 TO 5
- R=RND(1)
- P=INT(R*32+1)
- S$=S$+MID$(L$,P,1)
- NEXT I
- PRINT : PRINT : PRINT
- GOSUB go
- IF MENU(1) <> 1 THEN GOTO start
- GOTO random
-
- speed:
- MENU
- CLS
- PRINT "OLD SPEED IS ";W1; " WORDS PER MINUTE."
- PRINT "ENTER WORDS PER MINUTE(1-99)";
- INPUT W1
- IF W1<1 THEN speed
- IF W1>100 THEN speed
- D1=20/W1
- D3=1.3*D1
- D2=3*D1
- P1 = F
- P2=D1
- P3=3*P2
- CLS
- RETURN
-
- tone:
- MENU
- CLS
- PRINT "OLD TONE IS";F;
- PRINT "ENTER NEW TONE";
- INPUT F
- IF F<10 THEN tone
- IF F>5000 THEN tone
- CLS
- RETURN
-
- volume:
- MENU ' volume menu not working
- CLS
- PRINT "OLD VOLUME IS";V;
- PRINT "ENTER NEW VOLUME";
- INPUT V
- IF V<1 THEN volume
- IF V>255 THEN volume
- CLS
- RETURN
-
- restart:
- CLS
- PRINT"File ";F$;" does not exist."
- GOTO pfile
-
- file:
- MENU
- CLS
-
- pfile:
- PRINT "ENTER FILE NAME";
- INPUT F$
- IF LEN(F$)<1 THEN GOTO start
- ON ERROR GOTO restart
- OPEN F$ FOR INPUT AS #1
- WHILE NOT EOF(1)
- INPUT #1,S$
- GOSUB go
- WEND
- CLOSE #1
- RETURN
-
- END
-
-
-